In a computing machine, such as a server, router, computer, laptop, PDA, mobile phone, netbook, etc., and other devices having processor logic and memory, the computing machine can have an operating system installed thereon, and may further include a number of application programs that execute on the computing machine. However, after manufacture and/or assembly, the operating system and application programs first have to be loaded onto the computing machine.
Computing systems can include multiple computing machines, which may be communicatively coupled over a network. The computing machines may, from time to time, be managed. For example, managing a computing machine can include loading and/or updating an operating system and/or application programs. The computing machine may subsequently be managed, such as to upgrade, replace, or troubleshoot the operating system and/or application programs; add, remove, or modify access rights; add/remove additional application programs; or examine and modify filesystems, execute commands, and/or perform other hardware, software, or operational manipulations.
In order to bring-up server racks or Performance Optimized Datacenters (PODs) in factory or solutions environments, customer sites, and internal labs, software has to be deployed to and tested across a large number of machines. Existing efforts to do so involve more infrastructure than the base Out Of the Box (OOB) operating system (OS), do not communicate across different OS types, and may not even be aware of all user-specified software tools and utilities to monitor their execution on remote machines'.